home *** CD-ROM | disk | FTP | other *** search
-
-
- LD (1) Sozobon Programmer's Manual LD (1)
-
-
-
-
- N✓NA✓AM✓ME✓E
- ld - The SozobonX Linker (loader)
-
- S✓SY✓YN✓NO✓OP✓PS✓SI✓IS✓S
- l✓ld✓d [o✓op✓pt✓ti✓io✓on✓ns✓s] [<f✓fi✓il✓le✓e> ...]
-
-
- l✓ld✓d [-✓-V✓Vv✓vh✓ht✓tp✓pm✓mb✓b][-✓-v✓v2✓2] [-✓--✓-n✓no✓of✓fl✓lo✓oa✓ad✓d][-✓--✓-n✓no✓of✓fr✓ra✓am✓m] [-✓--✓-n✓no✓of✓fm✓me✓em✓m]
-
- [-✓-B✓B <n✓n>] [-✓-o✓o <f✓fi✓il✓le✓e>] [-✓-u✓u <s✓sy✓ym✓mb✓bo✓ol✓l>] [-✓-L✓L <p✓pa✓at✓th✓h>]
-
- [-✓-f✓f <l✓li✓in✓nk✓k ✓ f✓fi✓il✓le✓e>] | [<f✓fi✓il✓le✓e> ...]
-
- D✓DE✓ES✓SC✓CR✓RI✓IP✓PT✓TI✓IO✓ON✓N
- The l✓ld✓d command links object modules and libraries to form an
- executable program. Both object modules and libraries may be
- passed to ld for linking. It can handle DRI, SozobonX objects
- and DRI archives only.
-
- By default the output is written to file 'a✓a.✓.o✓ou✓ut✓t', and the
- F✓Fa✓as✓st✓tl✓lo✓oa✓ad✓d, 'l✓lo✓oa✓ad✓d ✓ t✓to✓o ✓ F✓Fa✓as✓st✓tR✓RA✓AM✓M' and the 'm✓ma✓al✓ll✓lo✓oc✓c ✓ f✓fr✓ro✓om✓m ✓ F✓Fa✓as✓st✓tR✓RA✓AM✓M' pro-
- gram header flags are set.
-
- Several options may be specified to alter the operation of the
- linker:
-
- O✓OP✓PT✓TI✓IO✓ON✓NS✓S
- ✓ -✓--✓-v✓ve✓er✓rs✓si✓io✓on✓n ✓
- ✓ -✓-V✓V ✓
- Print detailed Version information to stdout and exit
- ✓ -✓--✓-h✓he✓el✓lp✓p ✓
- ✓ -✓-h✓h ✓
- Print the synospsis information (usage) and exit
- ✓ -✓-v✓v ✓ (verbose)
- Generally show more information about what l✓ld✓d is doing and
- print short version information (to stderr).
- ✓ -✓-v✓v2✓2 ✓
- If you put two 'v✓v's or a '-✓-v✓v2✓2' into commandline l✓ld✓d will
- be more verbose, printing the symbols looked for in the
- libraries, and the extern symbols of the newly added
- modules from the libraries.
- ✓ -✓-B✓B<✓<n✓n>✓> ✓
- Increase the limits for internal buffers by factor <n✓n>.
- This option will be replaced by some automatic allocation
- routines some time.
- ✓ -✓-t✓t ✓ (table)
- Put a symbol table in the output file.
- ✓ -✓-p✓p ✓ (passes)
- Make multiple passes over each library until no more
- references can be satisfied. If libraries are ordered
- appropriately, this option is not needed and linking will
- be faster.
- ✓ -✓-f✓f ✓ <f✓fi✓il✓le✓e>
-
-
-
- v 2.00x9 Jul 21 1994 Page 1
-
-
-
-
- LD (1) Sozobon Programmer's Manual LD (1)
-
-
-
- This option is useful when many files are to be linked.
- The loader reads the file <f✓fi✓il✓le✓e> specified for a list of
- object modules and libraries to be linked. Names in the
- file should be separated by white space or newlines. c✓cc✓c
- will always use this option.
- ✓ -✓-o✓o ✓ <f✓fi✓il✓le✓e>
- By default, the name of the executable file is 'a✓a.✓.o✓ou✓ut✓t'.
- This option allows a different name to be specified.
- ✓ -✓-u✓u ✓ <s✓sy✓ym✓mb✓bo✓ol✓l>
- Forces ld to link the symbol <s✓sy✓ym✓mb✓bo✓ol✓l> at once if it is
- found in any library module.
- The given symbol is marked as undefined. This can be use-
- ful when linking from libraries. And a symbol (e.g.
- _✓__✓_p✓pr✓ri✓in✓nt✓tf✓f) can be marked as undefined to force loading it
- from a library, before another module (e.g. from another
- library) asks for it.
- ✓ -✓-b✓b ✓
- This option can be used when linking large programs to
- reduce the amount of memory used by the loader. The loader
- makes more disk accesses when this option is used.
- ✓ -✓-M✓M ✓
- ✓ -✓-m✓m ✓
- Print a load map. (I've read anywhere -M is standard?) A
- table of all linked objects with their sizes is printed to
- stdout.
- -L<p✓pa✓at✓th✓h>
- Add path to the search list to find following (in
- commandline) libraries and object modules. The pathes
- specified with -✓-L✓L option are searched first, after cwd and
- before builtin or $✓$L✓LI✓IB✓B pathes, in the order specified in
- the commandline.
- ✓ -✓--✓-n✓no✓of✓fl✓lo✓oa✓ad✓d ✓
- Do not set Fastload flag in program header of generated
- executable.
- ✓ -✓--✓-n✓no✓of✓fr✓ra✓am✓m ✓
- Do not set 'load to FastRAM' flag in program header of
- generated executable.
- ✓ -✓--✓-n✓no✓of✓fm✓me✓em✓m ✓
- Do not set 'malloc from FastRAM' flag in program header of
- generated executable.
-
- E✓EN✓NV✓VI✓IR✓RO✓ON✓NM✓ME✓EN✓NT✓T
- $✓$L✓LI✓IB✓BD✓DI✓IR✓R This path replaces the builtin search pathes for
- libraries and object modules not to find in cwd.
-
- $✓$L✓LI✓IB✓B A list of pathes where libraries and object modules are to
- search. If this variable is specified the builtin pathes and
- the $✓$L✓LI✓IB✓BD✓DI✓IR✓R path are ignored for searches.
-
- If $✓$S✓ST✓TD✓DE✓ER✓RR✓R is present, stderr handle (2) is used for diagnostic
- output.
-
-
-
-
-
-
- v 2.00x9 Jul 21 1994 Page 2
-
-
-
-
- LD (1) Sozobon Programmer's Manual LD (1)
-
-
-
- D✓DI✓IA✓AG✓GN✓NO✓OS✓ST✓TI✓IC✓CS✓S
- W✓Wa✓ar✓rn✓ni✓in✓ng✓gs✓s:✓:
- message:
- Double def of <sym>: in <module (archive)> type <char>,
- in <module (archive)> type <char>
-
- Tells you that symbol <sym> is defined in the two named modules,
- the second module name is the first definition. The type char
- [Text|Data|Bss|Common|?] tells you the symbols' type in the module.
-
- If a symbol is already defined, the first definition is used.
-
- message:
- Common sizes differ: <sym> in <module (archive)> <size>,
- in <module (archive)> <size>
-
- Tells you, that Common symbol <sym> is defined with different sizes
- in different modules.
- The larger size will be used for that symbol.
- E✓Er✓rr✓ro✓or✓rM✓Me✓es✓ss✓sa✓ag✓ge✓es✓s:✓:
- message:
- Undef <sym> from <module (archive)>
-
- The symbol <sym>, used in <module> (maybe in others, too) isn't
- defined in any specified module. (No output!)
-
- message:
- Undef Common <sym> from <module (archive)>
-
- The Common symbol <sym> is never defined with a length value.
- (No output is generated!);
-
- L✓LI✓IM✓MI✓IT✓TS✓S
- The number of handled files, objects and symbols is still limited:
- 60 different files
- 1000 global symbols in resulting object (executable)
- 400 symbols in every object module
- 600 objects in a library (only used for rescanning - multiple passes)
- 300 objects currently used
-
- S✓SE✓EE✓E ✓ A✓AL✓LS✓SO✓O
- cc(1), nm(1), ar(1), libsort(1)
-
- B✓BU✓UG✓GS✓S
- Without doubt, there are some bugs in this program. If you
- discover one, please report it to maintainer.
-
- A✓AU✓UT✓TH✓HO✓OR✓R
- Written by Johann Ruegg, Copyright (c) 1988,89,90,91 by Sozobon,
- Ltd.
-
- eXtended Version by Holger Weets, Jerry G Geiger (1992-1995)
-
-
-
-
-
- v 2.00x9 Jul 21 1994 Page 3
-
-
-
-
- LD (1) Sozobon Programmer's Manual LD (1)
-
-
-
- V✓VE✓ER✓RS✓SI✓IO✓ON✓N
- ld V2.00x10 Apr 8 1995
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- v 2.00x9 Jul 21 1994 Page 4
-
-
-